This invention relates to a data storage device to be interfaced with a computer as a peripheral, and more specifically to such a device adapted for use not only with usual storage media for storing computer data but with those having prewritten thereon programs or software that is not used by the computer, such as a new version of interfacing firmware and a self-testing program for the peripheral.
Examples of the data storage device envisaged by the present invention include, but are not limited to, all such currently known devices as flexible magnetic disk drives, CD-ROM drives, optical disk drives, magneto-optical disk drives, and magnetic tape transports, all such devices being alike in their potential capability of use with the noted two different kinds of storage media.
There recently have been introduced to the market the personal computers that have what is called a universal serial bus (USB) port for connection of peripherals via serial USB interfaces. A plurality of peripherals, each with a USB interface, may be connected what is termed a USB hub via separate USB cables and thence to the USB port of the computer via a single USB cable. USB connections are acknowledged to greatly enhance the versatility of computer systems.
The USB interface, which may, or may not, be built into each peripheral, includes a central processor unit, a random access memory, a read-only memory, etc. For adapting the peripheral to the specific computer in use, the USB interface ROM stores system software commonly known as firmware. Computer manufacturers and users alike have experienced difficulties in changing the ROM firmware, usually in upgrading it to a later version. The following two methods have so far been available for this purpose:
1. Replacing the ROM itself by a new one holding the new version.
2. Building an electrically erasable programmable ROM (EEPROM), instead of a simple nonprogrammable ROM, into the USB interface for firmware storage, permitting the user to rewrite the firmware as the need arises.
The first described method involves the trouble of sending the complete peripheral to the manufacturer or to the authorized service shop at the costs of considerable time, labor and expense. Although this trouble is absent from the second method, reprogramming by the user himself is no easy task, with a high likelihood of write errors being introduced into the firmware, potentially seriously affecting the performance of the peripheral or of the complete computer system.